The alias command is used to alias a multiple word command to a single word. Although macros and aliases are different objects, it is not allowed to define a macro and an alias with the same name since aliases are always expanded first. Recall that the bang operator (`!'), at the beginning of a line is recognized from a macro, an alias or a script file so that an alias like
alias date !dateis perfectly legal. However, this would have to be typed
alias date ! dateat the interactive command line, to avoid that the `!' be interpreted by the history functions.
When called without arguments, alias will list all the current aliases. For obvious reasons, it is not allowed to alias unalias. alias also supports the command abbreviation character `!'. To enter a `!' without having it interpreted by the history functions, just set noexpand for the time entering the command. When a `!' is part of the alias name this indicates that the alias command name can be abbreviated down to that point. Since the & operator is used to refer to the native commands, it is therefore forbidden to start an alias name by character '&'.
alias command command-list
alias mv !mv alias . quit alias da!te !date
!, &, macro, unalias, set expand